#ifndef Courriel_H
#define Courriel_H

#include <QtNetwork/QTcpSocket>
#include <QString>
#include <QTextStream>
#include <QDebug>
#include <QtGui/QMessageBox>
#include <QThread>

enum Etape
{
    Rcpt, Mail, Data, Init, Body, Quit, Close
};


class Courriel : public QThread
{
Q_OBJECT


public:
Courriel(const QString sAdresseCourriel, const int nPort, const QString sFrom, const QString sTo, const QString sSujet, const QString sCorps) ;
~Courriel() ;
void EnvoyerUnMessage() ;
void run() ;

private slots:
void on_ErreurRecu(QAbstractSocket::SocketError ErreurSocket) ;
void on_deconnecte() ;
void on_connecte() ;
void on_PretALire() ;

private:
QString sMessage ;
QTextStream *oFlux ;
QTcpSocket *oSocket ;
QString sFrom ;
QString sTo ;
QString sReponse ;
QString sAdresseCourriel ;
int nPort ;
int state ;

} ;
#endif
